Memory Management Techniques for Exploiting RDMA in PGAS Languages
نویسندگان
چکیده
Partitioned Global Address Space (PGAS) languages are a popular alternative when building applications to run on large scale parallel machines. Unified Parallel C (UPC) is a well known PGAS language that is available on most high performance computing systems. Good performance of UPC applications is often one important requirement for a system acquisition. This paper presents the memory management techniques employed by the IBM XL UPC compiler to achieve optimal performance on systems with Remote Direct Memory Access (RDMA). Additionally we describe a novel technique employed by the UPC runtime for transforming remote memory accesses on a same shared memory node into local memory accesses, to further improve performance. We evaluate the proposed memory allocation policies for various UPC benchmarks and using the IBMR © PowerR © 775 supercomputer [1].
منابع مشابه
A PGAS-based implementation for the unstructured CFD solver TAU
Whereas most applications in the realm of the partitioned global address space make use of PGAS languages we here demonstrate an implementation on top of a PGAS-API. In order to improve the scalability of the unstructured CFD solver TAU we have implemented an asynchronous communication strategy on top of the PGAS-API of GPI. We have replaced the bulk-synchronous two-sided MPI exchange with an a...
متن کاملAn Efficient Implementation of Stencil Communication for the XcalableMP PGAS Parallel Programming Language
Partitioned Global Address Space (PGAS) programming languages have emerged as a means by which to program parallel computers, which are becoming larger and more complicated. For such languages, regular stencil codes are still one of the most important goals. We implemented three methods of stencil communication in a compiler for a PGAS language XcalableMP, which are 1) based on derived-datatype...
متن کاملAnalysis of Energy and Performance of Code Transformations for PGAS-based Data Access Patterns
One of the factors associated with the usability of distributed programming models in exascale machines is the energy and power cost associated with data movement across large-scale systems. PGAS models provide the user with explicit interfaces to transfer data to remote processes. From an application programmer’s perspective, a number of factors impact the semantics and performance of communic...
متن کاملEnabling Applications for RDMA: Distributed Compilation Revisited
Remote Direct Memory Access (RDMA) traditionally aimed at improving high-performance computing applications and storage-area networks because CPU cycles and memory bus load can be reduced significantly by applying the zero-copy and direct data-placement techniques offered by RDMA. With the advent of iWARP, the RDMA technology is now available to the ubiquitous TCP/IP infrastructure and, thus, b...
متن کاملThe partitioned global address space (PGAS) languages combine the best features out of the shared memory programming model and
The partitioned global address space (PGAS) languages combine the best features out of the shared memory programming model and the message passing model. As in message passing, PGAS languages facilitate the exploitation of data locality in the underlying application. As in the shared memory model, however, PGAS models use one-sided communications. Thus, an expression can cause a remote read whi...
متن کامل